Momentum Controller
The purpose of this controller is to keep the momentum in a desired state, typically [0 0 0]. Momentum control is performed in the MMC frame, which can be defined by any rotation relative to the body, inertial, or orbit frame. Typically this rotation is [0 0 0 1] BDY, therefore making the MMC frame the same as the BDY frame.
Selected momentum controller
You have the option to create one or more momentum controllers with different gains, limits, actuator sets, etc. This provides flexibility for complex missions with two or more phases or modes that have very different control requirements. The dropdown menu in this section enables you to choose among controllers. The Index sets where in the controller dropdown list the controller will appear. You have the ability to change a controller's name, add a new controller, and copy or delete the selected controller.
Momentum control block diagram
The following block diagram shows the topology of the PID controller implemented in the spacecraft flight software. Three independent momentum controllers, one for each body frame axis, are implemented.
Momentum Controller parameters
The following subsections describe all of the configurable parameters for the Momentum Controller.
Actuator/Spacecraft momentum
Use these two check boxes to allow or block the actuator or spacecraft momentum from being used in the momentum calculations.
Enabled State
You can select when you want the momentum controller to be working using the Enabled State selection. The different options disable or enable the momentum controller during different modes. There are four options for the enabled state. The indicators with the term "Idle" refer to whether the momentum controller will be active when the Spacecraft Mode is in Idle.
- Always Enabled
- Enabled, Idle-Disabled
- Disabled, Idle-Enabled
- Always Disabled
Gains and limits
As with the attitude controller, you can set the gains and limits for the momentum controller.
Parameter | Description | Units |
---|---|---|
Command | Desired momentum to control to in specified MMC frame | N*m*s |
Gain | Momentum gain, proportional torque per momentum gain | 1/s |
Upper/Lower Limit | Upper/Lower torque limit | N*m |
Actuator sets (MMC)
In this section, you can specify which actuator set that you want controlling a given axis. Typically the same set is used across all axes, but that is not required. Only thrusters and magnetic torquers can be used for momentum control.
You can set a reference frame for the momentum controller. The reference is defined by a DCM or quaternion relative to one of three frames:
- Body (BDY)
- Inertial (CBI)
- Velocity/Normal/Co-Normal (VNC)
Momentum Error Deadbanding
In the Momentum Error Deadbanding section, you can set what momentum state will kick off the momentum controller.
- Continuous: The momentum controller is always working to drive the momentum to the command state.
- Momentum Error Threshold: The momentum controller will start if the momentum state exceeds the Start Condition and will stop once the momentum reaches the Complete Condition. If the momentum controller takes longer than the Timeout time to reach the Complete Condition, the Controller will be set to Always Disabled in the enabled state.
Filters
The Filters section enables you to set the numerator and denominator coefficients of filters for each of the momentum controller axes.